<?php declare(strict_types=1);


namespace App\Model\Entity;

use Swoft\Db\Annotation\Mapping\Column;
use Swoft\Db\Annotation\Mapping\Entity;
use Swoft\Db\Annotation\Mapping\Id;
use Swoft\Db\Eloquent\Model;


/**
 * 用户信息扩展表
 * Class MemberExtends
 *
 * @since 2.0
 *
 * @Entity(table="member_extends")
 */
class MemberExtends extends Model
{
    /**
     * 
     * @Id(incrementing=false)
     * @Column(name="member_id", prop="member_id")
     *
     * @var int
     */
    private $memberId;

    /**
     * 用户登录设备1:android,2:ios,3:web
     *
     * @Column()
     *
     * @var int
     */
    private $equipment;

    /**
     * 设备号
     *
     * @Column(name="equipment_number", prop="equipment_number")
     *
     * @var string
     */
    private $equipmentNumber;

    /**
     * 签名
     *
     * @Column()
     *
     * @var string
     */
    private $signature;

    /**
     * 积分
     *
     * @Column()
     *
     * @var int
     */
    private $score;

    /**
     * 等级积分
     *
     * @Column(name="amass_score", prop="amass_score")
     *
     * @var int
     */
    private $amassScore;

    /**
     * 举报次数
     *
     * @Column(name="reported_times", prop="reported_times")
     *
     * @var int
     */
    private $reportedTimes;

    /**
     * 动态次数
     *
     * @Column(name="posts_num", prop="posts_num")
     *
     * @var int
     */
    private $postsNum;

    /**
     * 
     *
     * @Column(name="updated_at", prop="updated_at")
     *
     * @var int
     */
    private $updatedAt;

    /**
     * 语种 1:english  2:russian
     *
     * @Column(name="lang_setting")
     *
     * @var int
     */
    private $langSetting;

    /**
     * 是否拒绝消息 0不拒绝 1拒绝
     *
     * @Column()
     *
     * @var int
     */
    private $refuse;

    /**
     * 是否导入用户 1:是 0:否
     *
     * @Column(name="is_import")
     *
     * @var int
     */
    private $isImport;

    /**
     * website
     *
     * @Column()
     *
     * @var string|null
     */
    private $website;

    /**
     * Youtube账户
     *
     * @Column()
     *
     * @var string|null
     */
    private $youtube;

    /**
     * YouTube账户是否审核 1:通过 0:未通过 2:待审核 3:未填写
     *
     * @Column(name="youtube_verify")
     *
     * @var int
     */
    private $youtubeVerify;

    /**
     * 测评权限：1:开通 0:未开通
     *
     * @Column(name="review_permission")
     *
     * @var int
     */
    private $reviewPermission;

    /**
     * 测评帖子数youtube、图文review
     *
     * @Column(name="review_num")
     *
     * @var int
     */
    private $reviewNum;

    /**
     * 可用现金
     *
     * @Column()
     *
     * @var float
     */
    private $cash;

    /**
     * 消费现金
     *
     * @Column()
     *
     * @var float
     */
    private $consumption;

    /**
     * 额外积分
     *
     * @Column(name="extra_score")
     *
     * @var int
     */
    private $extraScore;

    /**
     * 邀请额外积分
     *
     * @Column(name="invite_extra_score")
     *
     * @var int
     */
    private $inviteExtraScore;


    /**
     * @param int $memberId
     *
     * @return void
     */
    public function setMemberId(int $memberId): void
    {
        $this->memberId = $memberId;
    }

    /**
     * @param int $equipment
     *
     * @return void
     */
    public function setEquipment(int $equipment): void
    {
        $this->equipment = $equipment;
    }

    /**
     * @param string $equipmentNumber
     *
     * @return void
     */
    public function setEquipmentNumber(string $equipmentNumber): void
    {
        $this->equipmentNumber = $equipmentNumber;
    }

    /**
     * @param string $signature
     *
     * @return void
     */
    public function setSignature(string $signature): void
    {
        $this->signature = $signature;
    }

    /**
     * @param int $score
     *
     * @return void
     */
    public function setScore(int $score): void
    {
        $this->score = $score;
    }

    /**
     * @param int $amassScore
     *
     * @return void
     */
    public function setAmassScore(int $amassScore): void
    {
        $this->amassScore = $amassScore;
    }

    /**
     * @param int $reportedTimes
     *
     * @return void
     */
    public function setReportedTimes(int $reportedTimes): void
    {
        $this->reportedTimes = $reportedTimes;
    }

    /**
     * @param int $postsNum
     *
     * @return void
     */
    public function setPostsNum(int $postsNum): void
    {
        $this->postsNum = $postsNum;
    }

    /**
     * @param int $updatedAt
     *
     * @return void
     */
    public function setUpdatedAt(int $updatedAt): void
    {
        $this->updatedAt = $updatedAt;
    }

    /**
     * @param int $langSetting
     *
     * @return void
     */
    public function setLangSetting(int $langSetting): void
    {
        $this->langSetting = $langSetting;
    }

    /**
     * @param int $refuse
     *
     * @return void
     */
    public function setRefuse(int $refuse): void
    {
        $this->refuse = $refuse;
    }

    /**
     * @param int $isImport
     *
     * @return void
     */
    public function setIsImport(int $isImport): void
    {
        $this->isImport = $isImport;
    }

    /**
     * @param string|null $website
     *
     * @return void
     */
    public function setWebsite(?string $website): void
    {
        $this->website = $website;
    }

    /**
     * @param string|null $youtube
     *
     * @return void
     */
    public function setYoutube(?string $youtube): void
    {
        $this->youtube = $youtube;
    }

    /**
     * @param int $youtubeVerify
     *
     * @return void
     */
    public function setYoutubeVerify(int $youtubeVerify): void
    {
        $this->youtubeVerify = $youtubeVerify;
    }

    /**
     * @param int $reviewPermission
     *
     * @return void
     */
    public function setReviewPermission(int $reviewPermission): void
    {
        $this->reviewPermission = $reviewPermission;
    }

    /**
     * @param int $reviewNum
     *
     * @return void
     */
    public function setReviewNum(int $reviewNum): void
    {
        $this->reviewNum = $reviewNum;
    }

    /**
     * @param float $cash
     *
     * @return void
     */
    public function setCash(float $cash): void
    {
        $this->cash = $cash;
    }

    /**
     * @param float $consumption
     *
     * @return void
     */
    public function setConsumption(float $consumption): void
    {
        $this->consumption = $consumption;
    }

    /**
     * @param int $extraScore
     *
     * @return void
     */
    public function setExtraScore(int $extraScore): void
    {
        $this->extraScore = $extraScore;
    }

    /**
     * @param int $inviteExtraScore
     *
     * @return void
     */
    public function setInviteExtraScore(int $inviteExtraScore): void
    {
        $this->inviteExtraScore = $inviteExtraScore;
    }

    /**
     * @return int
     */
    public function getMemberId(): ?int
    {
        return $this->memberId;
    }

    /**
     * @return int
     */
    public function getEquipment(): ?int
    {
        return $this->equipment;
    }

    /**
     * @return string
     */
    public function getEquipmentNumber(): ?string
    {
        return $this->equipmentNumber;
    }

    /**
     * @return string
     */
    public function getSignature(): ?string
    {
        return $this->signature;
    }

    /**
     * @return int
     */
    public function getScore(): ?int
    {
        return $this->score;
    }

    /**
     * @return int
     */
    public function getAmassScore(): ?int
    {
        return $this->amassScore;
    }

    /**
     * @return int
     */
    public function getReportedTimes(): ?int
    {
        return $this->reportedTimes;
    }

    /**
     * @return int
     */
    public function getPostsNum(): ?int
    {
        return $this->postsNum;
    }

    /**
     * @return int
     */
    public function getUpdatedAt(): ?int
    {
        return $this->updatedAt;
    }

    /**
     * @return int
     */
    public function getLangSetting(): ?int
    {
        return $this->langSetting;
    }

    /**
     * @return int
     */
    public function getRefuse(): ?int
    {
        return $this->refuse;
    }

    /**
     * @return int
     */
    public function getIsImport(): ?int
    {
        return $this->isImport;
    }

    /**
     * @return string|null
     */
    public function getWebsite(): ?string
    {
        return $this->website;
    }

    /**
     * @return string|null
     */
    public function getYoutube(): ?string
    {
        return $this->youtube;
    }

    /**
     * @return int
     */
    public function getYoutubeVerify(): ?int
    {
        return $this->youtubeVerify;
    }

    /**
     * @return int
     */
    public function getReviewPermission(): ?int
    {
        return $this->reviewPermission;
    }

    /**
     * @return int
     */
    public function getReviewNum(): ?int
    {
        return $this->reviewNum;
    }

    /**
     * @return float
     */
    public function getCash(): ?float
    {
        return $this->cash;
    }

    /**
     * @return float
     */
    public function getConsumption(): ?float
    {
        return $this->consumption;
    }

    /**
     * @return int
     */
    public function getExtraScore(): ?int
    {
        return $this->extraScore;
    }

    /**
     * @return int
     */
    public function getInviteExtraScore(): ?int
    {
        return $this->inviteExtraScore;
    }

}
